


*** Edit following command to reflect the relevant location of our dataset
use "C:\Users...\AIpaper_Data_R&Pclean.dta", clear

* Weight Data *
svyset ES_id [pweight=w8]

******************************************* MAIN ARTICLE ***************************************************

************************************************************************************************************

* FIGURE 1: Beliefs about How Different Economic-Political Trends Might Impact One's Own Job Prospects *
	
svy: tab longjobimpact8_recession //* Britain entering an economic recession
svy: tab longjobimpact2_AI        //* The use of Artificial Intelligence in my area of work
svy: tab longjobimpact3_immigration //* Britain allowing higher rates of immigration
svy: tab longjobimpact1_technology //* The expansion of technological advances in the workplace
svy: tab longjobimpact7_imports //* An increase of cheap imported products in the UK
svy: tab longjobimpact6_greentax //* Efforts to reduce Britain's carbon emissions and combat climate change.


************************************************************************************************************

* TABLE 1: Distribution of Subjective Exposure to AI by Objective Occupational Exposure (Raw Data) *
	
* Set Controls and Sample Size	
global controls_occupindices std_RTI_Autor std_offshorable_Blinder2007 
global controls_demographics age ib1.female_dummy i.degree_dummy ib2.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp 	
 
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics  $controls_occupindices, or
generate infullmodel_Table1 = e(sample) 
	 
	 
******* TABLE 1a ******

** Descriptives
svy: tab aiexposure_groupFelten2021 jobimpact2_AI, row stubw(40)

** Model 1a
svy: logit AI_worsen aiexposure_felten2021 if infullmodel_Table1 == 1, or 
** Model 1b
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 1c
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 2a
svy: logit AI_improve aiexposure_felten2021 if infullmodel_Table1 == 1, or 
** Model 2b
svy: logit AI_improve aiexposure_felten2021 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 2c
svy: logit AI_improve aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 3a
svy: logit AI_directionworse aiexposure_felten2021 if infullmodel_Table1 == 1, or 
** Model 3b
svy: logit AI_directionworse aiexposure_felten2021 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 3c
svy: logit AI_directionworse aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 


******* TABLE 1b ******

** Descriptives
svy: tab aiexposure_pizzinelli2023 jobimpact2_AI, row stubw(40)

** Model 4a
svy: logit AI_worsen i.aiexposure_pizzinelli2023 if infullmodel_Table1 == 1, or 
** Model 4b
svy: logit AI_worsen i.aiexposure_pizzinelli2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 4c
svy: logit AI_worsen i.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 5a
svy: logit AI_improve i.aiexposure_pizzinelli2023 if infullmodel_Table1 == 1, or 
** Model 5b
svy: logit AI_improve i.aiexposure_pizzinelli2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 5c
svy: logit AI_improve i.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 6a
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 if infullmodel_Table1 == 1, or 
** Model 6b
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 6c
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 


******* TABLE 1c ******

** Descriptives
svy: tab aiexposure_gmyrek2023 jobimpact2_AI, row stubw(40)

** Model 7a
svy: logit AI_worsen i.aiexposure_gmyrek2023 if infullmodel_Table1 == 1, or 
** Model 7b
svy: logit AI_worsen i.aiexposure_gmyrek2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 7c
svy: logit AI_worsen i.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 8a
svy: logit AI_improve i.aiexposure_gmyrek2023 if infullmodel_Table1 == 1, or 
** Model 8b
svy: logit AI_improve i.aiexposure_gmyrek2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 8c
svy: logit AI_improve i.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 9a
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 if infullmodel_Table1 == 1, or 
** Model 9b
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 9c
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 




************************************************************************************************************

* TABLE 2: Demographic Predictors of Subjective Exposure to AI (Raw Data) *
	
* Set Controls and Sample Size	
global controls_demographics i.age_3 i.female_dummy i.degree_dummy i.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp i.isco08_5group
global controls_objective aiexposure_felten2021 i.aiexposure_pizzinelli2023 i.aiexposure_gmyrek2023

svy: logit AI_worsen aiexposure_felten2021  $controls_demographics $controls_objective, or
generate infullmodel_Table2 = e(sample) 
	 
	 
******* Age Group ********

* Model 1: Worsen 
svy: logit AI_worsen ib3.age_3 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen ib3.age_3 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen ib3.age_3 $controls_demographics  $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve ib3.age_3 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve ib3.age_3 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve ib3.age_3 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse ib3.age_3 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse ib3.age_3 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse ib3.age_3 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2



******* Gender ********

* Model 1: Worsen 
svy: logit AI_worsen ib1.female_dummy if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen ib1.female_dummy $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen ib1.female_dummy $controls_demographics  $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve ib1.female_dummy if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve ib1.female_dummy $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve ib1.female_dummy $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse ib1.female_dummy if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse ib1.female_dummy $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse ib1.female_dummy $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2


******* Education ********

* Model 1: Worsen 
svy: logit AI_worsen i.degree_dummy if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen i.degree_dummy $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen i.degree_dummy $controls_demographics  $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.degree_dummy if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve i.degree_dummy $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve i.degree_dummy $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.degree_dummy if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse i.degree_dummy $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse i.degree_dummy $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2


******* ISCO-08 Occupational Group ********

* Model 1: Worsen 
svy: logit AI_worsen i.isco08_5group if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen i.isco08_5group $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen i.isco08_5group $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.isco08_5group if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve i.isco08_5group $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve i.isco08_5group $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.isco08_5group if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse i.isco08_5group $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse i.isco08_5group $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2


******* Employment Sector Group ********

* Model 1: Worsen 
svy: logit AI_worsen i.employsector5 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen i.employsector5 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen i.employsector5 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.employsector5 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve i.employsector5 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve i.employsector5 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.employsector5 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse i.employsector5 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse i.employsector5 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2


******* Equivalised HH Income ********


* Model 1: Worsen 
svy: logit AI_worsen i.equivincomeHHquintile_HBAI_imp if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.equivincomeHHquintile_HBAI_imp if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.equivincomeHHquintile_HBAI_imp if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

******* Employment Status ********


* Model 1: Worsen 
svy: logit AI_worsen ib2.employmentstatus5 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_worsen ib2.employmentstatus5 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_worsen ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve ib2.employmentstatus5 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_improve ib2.employmentstatus5 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_improve ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse ib2.employmentstatus5 if infullmodel_Table2 == 1, or //* Bivariate
svy: logit AI_directionworse ib2.employmentstatus5 $controls_demographics if infullmodel_Table2 == 1, or //* M1
svy: logit AI_directionworse ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_Table2 == 1, or //*M2




************************************************************************************************************

* FIGURE 2: Subjective Exposure to AI and Selected Political Preferences (Raw Data) *
  
* Set Control Variables  
global controls_objective aiexposure_felten2021 i.aiexposure_pizzinelli2023 i.aiexposure_gmyrek2023  
global controls_demographics age i.female_dummy i.degree_dummy i.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp i.isco08_5group
global controls_politics  i.pid2024 i.profile_leftrightplacement	 

*Set Sample Size
svy: reg polpreferences1_redistribution i.jobimpact2_AI $controls_demographics $controls_politics $controls_objective
generate infullmodel_redist = e(sample)
svy: reg polpreferences6_education i.jobimpact2_AI $controls_demographics $controls_politics $controls_objective
generate infullmodel_education = e(sample)
svy: reg polpreferences4_immigration    i.jobimpact2_AI $controls_demographics $controls_politics $controls_objective
generate infullmodel_immig = e(sample)

*Standardise DVs
egen std_redistribution = std(polpreferences1_redistribution) if infullmodel_redist == 1
egen std_education = std(polpreferences6_education)           if infullmodel_education == 1
egen std_immigration = std(polpreferences4_immigration)       if infullmodel_immig == 1



*** Figure 2a: Support for Government Redistributing Incomes to the Less Well-Off ***

* M1: Bivariate Model
svy: reg std_redistribution i.jobimpact2_AI if infullmodel_redist == 1
* M2: + Demographic Controls
svy: reg std_redistribution i.jobimpact2_AI $controls_demographics if infullmodel_redist == 1
* M3: + Political Controls
svy: reg std_redistribution i.jobimpact2_AI $controls_demographics $controls_politics if infullmodel_redist == 1
* M4: + Objective AI Exposure
svy: reg std_redistribution i.jobimpact2_AI $controls_objective $controls_demographics $controls_politics if infullmodel_redist == 1                      


*** Figure 2b: Support for Government Spending on Free Adult Education / Re-Training ***

* M1: Bivariate Model
svy: reg std_education i.jobimpact2_AI if infullmodel_education == 1
* M2: + Demographic Controls
svy: reg std_education i.jobimpact2_AI $controls_demographics if infullmodel_education == 1
* M3: + Political Controls
svy: reg std_education i.jobimpact2_AI $controls_demographics $controls_politics if infullmodel_education == 1
* M4: + Objective AI Exposure
svy: reg std_education i.jobimpact2_AI $controls_objective $controls_demographics $controls_politics if infullmodel_education == 1


*** Figure 2c: Support for Government Liberalising Britain's Immigration Controls ***

* M1: Bivariate Model
svy: reg std_immigration i.jobimpact2_AI if infullmodel_immig == 1
* M2: + Demographic Controls
svy: reg std_immigration i.jobimpact2_AI $controls_demographics if infullmodel_immig == 1
* M3: + Political Controls
svy: reg std_immigration i.jobimpact2_AI $controls_demographics $controls_politics if infullmodel_immig == 1
* M4: + Objective AI Exposure
svy: reg std_immigration i.jobimpact2_AI $controls_objective $controls_demographics $controls_politics if infullmodel_immig == 1




******************************************* SUPPLEMENTARY MATERIAL *****************************************

************************************************************************************************************

* APPENDIX A: Distribution of Subjective Exposure to AI by Objective Occupational Exposure - Alternative Exposure Indices (Raw Data) *
	
* Set Controls and Sample Size	
global controls_occupindices std_RTI_Autor std_offshorable_Blinder2007 
global controls_demographics age ib1.female_dummy i.degree_dummy ib2.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp 	
 
svy: logit AI_worsen aiexposure_schendstok2024 $controls_demographics  $controls_occupindices, or
generate infullmodel_TableA1 = e(sample) 
	 
svy: logit AI_worsen aiexposure_Webb2020 $controls_demographics  $controls_occupindices, or
generate infullmodel_TableA2 = e(sample) 
	 	 
******* TABLE A1 ******

** Descriptives
svy: tab aiexposure_groupschendstok2024 jobimpact2_AI, row stubw(40)

** Model 1a
svy: logit AI_worsen aiexposure_schendstok2024 if infullmodel_TableA1 == 1, or 
** Model 1b
svy: logit AI_worsen aiexposure_schendstok2024 $controls_demographics if infullmodel_TableA1 == 1, or 
** Model 1c
svy: logit AI_worsen aiexposure_schendstok2024 $controls_demographics $controls_occupindices if infullmodel_TableA1 == 1, or 

** Model 2a
svy: logit AI_improve aiexposure_schendstok2024 if infullmodel_TableA1 == 1, or 
** Model 2b
svy: logit AI_improve aiexposure_schendstok2024 $controls_demographics if infullmodel_TableA1 == 1, or 
** Model 2c
svy: logit AI_improve aiexposure_schendstok2024 $controls_demographics $controls_occupindices if infullmodel_TableA1 == 1, or 

** Model 3a
svy: logit AI_directionworse aiexposure_schendstok2024 if infullmodel_TableA1 == 1, or 
** Model 3b
svy: logit AI_directionworse aiexposure_schendstok2024 $controls_demographics if infullmodel_TableA1 == 1, or 
** Model 3c
svy: logit AI_directionworse aiexposure_schendstok2024 $controls_demographics $controls_occupindices if infullmodel_TableA1 == 1, or 


******* TABLE A2 ******

** Descriptives
svy: tab aiexposure_groupWebb2020 jobimpact2_AI, row stubw(40)

** Model 1a
svy: logit AI_worsen aiexposure_Webb2020 if infullmodel_TableA2 == 1, or 
** Model 1b
svy: logit AI_worsen aiexposure_Webb2020 $controls_demographics if infullmodel_TableA2 == 1, or 
** Model 1c
svy: logit AI_worsen aiexposure_Webb2020 $controls_demographics $controls_occupindices if infullmodel_TableA2 == 1, or 

** Model 2a
svy: logit AI_improve aiexposure_Webb2020 if infullmodel_TableA2 == 1, or 
** Model 2b
svy: logit AI_improve aiexposure_Webb2020 $controls_demographics if infullmodel_TableA2 == 1, or 
** Model 2c
svy: logit AI_improve aiexposure_Webb2020 $controls_demographics $controls_occupindices if infullmodel_TableA2 == 1, or 

** Model 3a
svy: logit AI_directionworse aiexposure_Webb2020 if infullmodel_TableA2 == 1, or 
** Model 3b
svy: logit AI_directionworse aiexposure_Webb2020 $controls_demographics if infullmodel_TableA2 == 1, or 
** Model 3c
svy: logit AI_directionworse aiexposure_Webb2020 $controls_demographics $controls_occupindices if infullmodel_TableA2 == 1, or 



************************************************************************************************************

* APPENDIX B: Full Models from Table 1

* TABLE B1: Distribution of Subjective Exposure to AI by Objective Occupational Exposure (Raw Data) *
	
* Set Controls and Sample Size	
global controls_occupindices std_RTI_Autor std_offshorable_Blinder2007 
global controls_demographics age ib1.female_dummy i.degree_dummy ib2.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp 	
 
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics  $controls_occupindices, or
*generate infullmodel_Table1 = e(sample) 
	 
	 
******* TABLE B1 ******

** Model 1a
svy: logit AI_worsen aiexposure_felten2021 if infullmodel_Table1 == 1, or 
** Model 1b
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 1c
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 2a
svy: logit AI_improve aiexposure_felten2021 if infullmodel_Table1 == 1, or 
** Model 2b
svy: logit AI_improve aiexposure_felten2021 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 2c
svy: logit AI_improve aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 3a
svy: logit AI_directionworse aiexposure_felten2021 if infullmodel_Table1 == 1, or 
** Model 3b
svy: logit AI_directionworse aiexposure_felten2021 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 3c
svy: logit AI_directionworse aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 


******* TABLE B2 ******

** Model 1a
svy: logit AI_worsen i.aiexposure_pizzinelli2023 if infullmodel_Table1 == 1, or 
** Model 1b
svy: logit AI_worsen i.aiexposure_pizzinelli2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 1c
svy: logit AI_worsen i.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 2a
svy: logit AI_improve i.aiexposure_pizzinelli2023 if infullmodel_Table1 == 1, or 
** Model 2b
svy: logit AI_improve i.aiexposure_pizzinelli2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 2c
svy: logit AI_improve i.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 3a
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 if infullmodel_Table1 == 1, or 
** Model 3b
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 3c
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 


******* TABLE B3 ******

** Model 1a
svy: logit AI_worsen i.aiexposure_gmyrek2023 if infullmodel_Table1 == 1, or 
** Model 1b
svy: logit AI_worsen i.aiexposure_gmyrek2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 1c
svy: logit AI_worsen i.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 2a
svy: logit AI_improve i.aiexposure_gmyrek2023 if infullmodel_Table1 == 1, or 
** Model 2b
svy: logit AI_improve i.aiexposure_gmyrek2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 2c
svy: logit AI_improve i.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 

** Model 3a
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 if infullmodel_Table1 == 1, or 
** Model 3b
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 $controls_demographics if infullmodel_Table1 == 1, or 
** Model 3c
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_Table1 == 1, or 


************************************************************************************************************

* APPENDIX C: Replication of Table 1 with Additional ISCO-08 Occupational Group Control

* TABLE C1: Felten et al. (2021) Measure
	
* Set Controls and Sample Size	
global controls_occupindices std_RTI_Autor std_offshorable_Blinder2007 
global controls_demographics age ib1.female_dummy i.degree_dummy ib2.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp i.isco08_10group 	
 
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics  $controls_occupindices, or
generate infullmodel_TableC1 = e(sample) 
	 
	 
******* TABLE C1 ******

** Model 1a
svy: logit AI_worsen aiexposure_felten2021 if infullmodel_TableC1 == 1, or 
** Model 1b
svy: logit AI_worsen aiexposure_felten2021 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 1c
svy: logit AI_worsen aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 

** Model 2a
svy: logit AI_improve aiexposure_felten2021 if infullmodel_TableC1 == 1, or 
** Model 2b
svy: logit AI_improve aiexposure_felten2021 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 2c
svy: logit AI_improve aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 

** Model 3a
svy: logit AI_directionworse aiexposure_felten2021 if infullmodel_TableC1 == 1, or 
** Model 3b
svy: logit AI_directionworse aiexposure_felten2021 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 3c
svy: logit AI_directionworse aiexposure_felten2021 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 


******* TABLE C2 ******

** Model 1a
svy: logit AI_worsen i.aiexposure_pizzinelli2023 if infullmodel_TableC1 == 1, or 
** Model 1b
svy: logit AI_worsen i.aiexposure_pizzinelli2023 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 1c
svy: logit AI_worsen i.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 

** Model 2a
svy: logit AI_improve i.aiexposure_pizzinelli2023 if infullmodel_TableC1 == 1, or 
** Model 2b
svy: logit AI_improve i.aiexposure_pizzinelli2023 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 2c
svy: logit AI_improve i.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 

** Model 3a
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 if infullmodel_TableC1 == 1, or 
** Model 3b
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 3c
svy: logit AI_directionworse ib3.aiexposure_pizzinelli2023 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 


******* TABLE 1c ******

** Model 1a
svy: logit AI_worsen i.aiexposure_gmyrek2023 if infullmodel_TableC1 == 1, or 
** Model 1b
svy: logit AI_worsen i.aiexposure_gmyrek2023 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 1c
svy: logit AI_worsen i.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 

** Model 2a
svy: logit AI_improve i.aiexposure_gmyrek2023 if infullmodel_TableC1 == 1, or 
** Model 2b
svy: logit AI_improve i.aiexposure_gmyrek2023 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 2c
svy: logit AI_improve i.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 

** Model 3a
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 if infullmodel_TableC1 == 1, or 
** Model 3b
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 i.isco08_10group if infullmodel_TableC1 == 1, or 
** Model 3c
svy: logit AI_directionworse ib3.aiexposure_gmyrek2023 $controls_demographics $controls_occupindices if infullmodel_TableC1 == 1, or 




************************************************************************************************************

* APPENDIX D: Replication of Table 2 with Alternative Economic-Political Trends

*Set Conrols and Sample Size
global controls_demographics i.age_3 i.female_dummy i.degree_dummy i.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp i.isco08_5group
global controls_objective aiexposure_felten2021 i.aiexposure_pizzinelli2023 i.aiexposure_gmyrek2023


************* TABLE D1: Demographic Predictors of Subjective Exposure to AI ***************

svy: logit AI_worsen aiexposure_felten2021  $controls_demographics $controls_objective, or
generate infullmodel_TableD1 = e(sample) 
	 
	 
******* Age Group ********

* Model 1: Worsen 
svy: logit AI_worsen ib3.age_3 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen ib3.age_3 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen ib3.age_3 $controls_demographics  $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve ib3.age_3 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve ib3.age_3 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse ib3.age_3 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse ib3.age_3 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2


******* Gender ********

* Model 1: Worsen 
svy: logit AI_worsen ib1.female_dummy if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen ib1.female_dummy $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen ib1.female_dummy $controls_demographics  $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve ib1.female_dummy if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve ib1.female_dummy $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse ib1.female_dummy if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse ib1.female_dummy $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2


******* Education ********

* Model 1: Worsen 
svy: logit AI_worsen i.degree_dummy if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen i.degree_dummy $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen i.degree_dummy $controls_demographics  $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.degree_dummy if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve i.degree_dummy $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.degree_dummy if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse i.degree_dummy $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2


******* ISCO-08 Occupational Group ********

* Model 1: Worsen 
svy: logit AI_worsen i.isco08_5group if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen i.isco08_5group $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.isco08_5group if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve i.isco08_5group $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.isco08_5group if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse i.isco08_5group $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2


******* Employment Sector Group ********

* Model 1: Worsen 
svy: logit AI_worsen i.employsector5 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen i.employsector5 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.employsector5 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve i.employsector5 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.employsector5 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse i.employsector5 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2


******* Equivalised HH Income ********


* Model 1: Worsen 
svy: logit AI_worsen i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

******* Employment Status ********


* Model 1: Worsen 
svy: logit AI_worsen ib2.employmentstatus5 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_worsen ib2.employmentstatus5 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_worsen ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 2: Improve 
svy: logit AI_improve ib2.employmentstatus5 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_improve ib2.employmentstatus5 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_improve ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit AI_directionworse ib2.employmentstatus5 if infullmodel_TableD1 == 1, or //* Bivariate
svy: logit AI_directionworse ib2.employmentstatus5 $controls_demographics if infullmodel_TableD1 == 1, or //* M1
svy: logit AI_directionworse ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD1 == 1, or //*M2



************* TABLE D2: Demographic Predictors of Subjective Exposure to General Tech. Advances ***************

svy: logit tech_worsen aiexposure_felten2021  $controls_demographics $controls_objective, or
generate infullmodel_TableD2 = e(sample) 
	 
	 
******* Age Group ********

* Model 1: Worsen 
svy: logit tech_worsen ib3.age_3 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen ib3.age_3 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen ib3.age_3 $controls_demographics  $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve ib3.age_3 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve ib3.age_3 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse ib3.age_3 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse ib3.age_3 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2


******* Gender ********

* Model 1: Worsen 
svy: logit tech_worsen ib1.female_dummy if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen ib1.female_dummy $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen ib1.female_dummy $controls_demographics  $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve ib1.female_dummy if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve ib1.female_dummy $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse ib1.female_dummy if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse ib1.female_dummy $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2


******* Education ********

* Model 1: Worsen 
svy: logit tech_worsen i.degree_dummy if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen i.degree_dummy $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen i.degree_dummy $controls_demographics  $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve i.degree_dummy if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve i.degree_dummy $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse i.degree_dummy if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse i.degree_dummy $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2


******* ISCO-08 Occupational Group ********

* Model 1: Worsen 
svy: logit tech_worsen i.isco08_5group if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen i.isco08_5group $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve i.isco08_5group if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve i.isco08_5group $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse i.isco08_5group if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse i.isco08_5group $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2


******* Employment Sector Group ********

* Model 1: Worsen 
svy: logit tech_worsen i.employsector5 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen i.employsector5 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve i.employsector5 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve i.employsector5 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse i.employsector5 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse i.employsector5 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2


******* Equivalised HH Income ********


* Model 1: Worsen 
svy: logit tech_worsen i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

******* Employment Status ********


* Model 1: Worsen 
svy: logit tech_worsen ib2.employmentstatus5 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_worsen ib2.employmentstatus5 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_worsen ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 2: Improve 
svy: logit tech_improve ib2.employmentstatus5 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_improve ib2.employmentstatus5 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_improve ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit tech_directionworse ib2.employmentstatus5 if infullmodel_TableD2 == 1, or //* Bivariate
svy: logit tech_directionworse ib2.employmentstatus5 $controls_demographics if infullmodel_TableD2 == 1, or //* M1
svy: logit tech_directionworse ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD2 == 1, or //*M2

	
	
	
	
************* TABLE D3: Demographic Predictors of Subjective Exposure to Cheap Imports ***************

svy: logit import_worsen aiexposure_felten2021  $controls_demographics $controls_objective, or
generate infullmodel_TableD3 = e(sample) 
	 
	 
******* Age Group ********

* Model 1: Worsen 
svy: logit import_worsen ib3.age_3 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen ib3.age_3 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen ib3.age_3 $controls_demographics  $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve ib3.age_3 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve ib3.age_3 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse ib3.age_3 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse ib3.age_3 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2


******* Gender ********

* Model 1: Worsen 
svy: logit import_worsen ib1.female_dummy if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen ib1.female_dummy $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen ib1.female_dummy $controls_demographics  $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve ib1.female_dummy if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve ib1.female_dummy $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse ib1.female_dummy if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse ib1.female_dummy $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2


******* Education ********

* Model 1: Worsen 
svy: logit import_worsen i.degree_dummy if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen i.degree_dummy $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen i.degree_dummy $controls_demographics  $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve i.degree_dummy if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve i.degree_dummy $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse i.degree_dummy if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse i.degree_dummy $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2


******* ISCO-08 Occupational Group ********

* Model 1: Worsen 
svy: logit import_worsen i.isco08_5group if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen i.isco08_5group $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve i.isco08_5group if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve i.isco08_5group $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse i.isco08_5group if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse i.isco08_5group $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2


******* Employment Sector Group ********

* Model 1: Worsen 
svy: logit import_worsen i.employsector5 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen i.employsector5 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve i.employsector5 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve i.employsector5 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse i.employsector5 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse i.employsector5 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2


******* Equivalised HH Income ********


* Model 1: Worsen 
svy: logit import_worsen i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

******* Employment Status ********


* Model 1: Worsen 
svy: logit import_worsen ib2.employmentstatus5 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_worsen ib2.employmentstatus5 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_worsen ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 2: Improve 
svy: logit import_improve ib2.employmentstatus5 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_improve ib2.employmentstatus5 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_improve ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit import_directionworse ib2.employmentstatus5 if infullmodel_TableD3 == 1, or //* Bivariate
svy: logit import_directionworse ib2.employmentstatus5 $controls_demographics if infullmodel_TableD3 == 1, or //* M1
svy: logit import_directionworse ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD3 == 1, or //*M2	
	
	
	
	
************* TABLE D4: Demographic Predictors of Subjective Exposure to Cheap Imports ***************

svy: logit immigration_worsen aiexposure_felten2021  $controls_demographics $controls_objective, or
generate infullmodel_TableD4 = e(sample) 
	 
	 
******* Age Group ********

* Model 1: Worsen 
svy: logit immigration_worsen ib3.age_3 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen ib3.age_3 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen ib3.age_3 $controls_demographics  $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve ib3.age_3 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve ib3.age_3 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse ib3.age_3 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse ib3.age_3 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse ib3.age_3 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2


******* Gender ********

* Model 1: Worsen 
svy: logit immigration_worsen ib1.female_dummy if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen ib1.female_dummy $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen ib1.female_dummy $controls_demographics  $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve ib1.female_dummy if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve ib1.female_dummy $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse ib1.female_dummy if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse ib1.female_dummy $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse ib1.female_dummy $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2


******* Education ********

* Model 1: Worsen 
svy: logit immigration_worsen i.degree_dummy if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen i.degree_dummy $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen i.degree_dummy $controls_demographics  $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve i.degree_dummy if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve i.degree_dummy $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse i.degree_dummy if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse i.degree_dummy $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse i.degree_dummy $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2


******* ISCO-08 Occupational Group ********

* Model 1: Worsen 
svy: logit immigration_worsen i.isco08_5group if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen i.isco08_5group $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve i.isco08_5group if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve i.isco08_5group $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse i.isco08_5group if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse i.isco08_5group $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse i.isco08_5group $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2


******* Employment Sector Group ********

* Model 1: Worsen 
svy: logit immigration_worsen i.employsector5 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen i.employsector5 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve i.employsector5 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve i.employsector5 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse i.employsector5 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse i.employsector5 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse i.employsector5 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2


******* Equivalised HH Income ********


* Model 1: Worsen 
svy: logit immigration_worsen i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse i.equivincomeHHquintile_HBAI_imp if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse i.equivincomeHHquintile_HBAI_imp $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

******* Employment Status ********


* Model 1: Worsen 
svy: logit immigration_worsen ib2.employmentstatus5 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_worsen ib2.employmentstatus5 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_worsen ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 2: Improve 
svy: logit immigration_improve ib2.employmentstatus5 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_improve ib2.employmentstatus5 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_improve ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2

* Model 3: Worsen v Improve
svy: logit immigration_directionworse ib2.employmentstatus5 if infullmodel_TableD4 == 1, or //* Bivariate
svy: logit immigration_directionworse ib2.employmentstatus5 $controls_demographics if infullmodel_TableD4 == 1, or //* M1
svy: logit immigration_directionworse ib2.employmentstatus5 $controls_demographics $controls_objective if infullmodel_TableD4 == 1, or //*M2	
	
	
	
	
************************************************************************************************************

* APPENDIX E: Full Models for Figure 2


* Set Control Variables  
global controls_objective aiexposure_felten2021 i.aiexposure_pizzinelli2023 i.aiexposure_gmyrek2023  
global controls_demographics age i.female_dummy i.degree_dummy i.employmentstatus5 i.employsector5 i.equivincomeHHquintile_HBAI_imp i.isco08_5group
global controls_politics  i.pid2024 i.profile_leftrightplacement	 

*Set Sample Size
svy: reg polpreferences1_redistribution i.jobimpact2_AI $controls_demographics $controls_politics $controls_objective
generate infullmodel_redist1 = e(sample)
svy: reg polpreferences6_education i.jobimpact2_AI $controls_demographics $controls_politics $controls_objective
generate infullmodel_education1 = e(sample)
svy: reg polpreferences4_immigration    i.jobimpact2_AI $controls_demographics $controls_politics $controls_objective
generate infullmodel_immig1 = e(sample)



*** Table E1: Support for Government Redistributing Incomes to the Less Well-Off ***

* A
svy: reg polpreferences1_redistribution i.jobimpact2_AI if infullmodel_redist1 == 1
* B
svy: reg polpreferences1_redistribution i.jobimpact2_AI $controls_demographics if infullmodel_redist1 == 1
* C
svy: reg polpreferences1_redistribution i.jobimpact2_AI $controls_demographics $controls_politics if infullmodel_redist1 == 1
* D
svy: reg polpreferences1_redistribution i.jobimpact2_AI $controls_objective $controls_demographics $controls_politics if infullmodel_redist1 == 1                      


*** Table E2: Support for Government Spending on Free Adult Education / Re-Training ***

* A
svy: reg polpreferences6_education i.jobimpact2_AI if infullmodel_education1 == 1
* B
svy: reg polpreferences6_education i.jobimpact2_AI $controls_demographics if infullmodel_education1 == 1
* C
svy: reg polpreferences6_education i.jobimpact2_AI $controls_demographics $controls_politics if infullmodel_education1 == 1
* D
svy: reg polpreferences6_education i.jobimpact2_AI $controls_objective $controls_demographics $controls_politics if infullmodel_education1 == 1


*** Table E3: Support for Government Liberalising Britain's Immigration Controls ***

* A
svy: reg polpreferences4_immigration i.jobimpact2_AI if infullmodel_immig1 == 1
* B
svy: reg polpreferences4_immigration i.jobimpact2_AI $controls_demographics if infullmodel_immig1 == 1
* C
svy: reg polpreferences4_immigration i.jobimpact2_AI $controls_demographics $controls_politics if infullmodel_immig1 == 1
* D
svy: reg polpreferences4_immigration i.jobimpact2_AI $controls_objective $controls_demographics $controls_politics if infullmodel_immig1 == 1
























	